home *** CD-ROM | disk | FTP | other *** search
- " Vim syntax file
- " Copyright by Jan-Oliver Wagner
- " Language: avenue
- " Maintainer: Jan-Oliver Wagner <Jan-Oliver.Wagner@intevation.de>
- " Last change: 2001 May 10
-
- " Avenue is the ArcView built-in language. ArcView is
- " a desktop GIS by ESRI. Though it is a built-in language
- " and a built-in editor is provided, the use of VIM increases
- " development speed.
- " I use some technologies to automatically load avenue scripts
- " into ArcView.
-
- " For version 5.x: Clear all syntax items
- " For version 6.x: Quit when a syntax file was already loaded
- if version < 600
- syntax clear
- elseif exists("b:current_syntax")
- finish
- endif
-
- " Avenue is entirely case-insensitive.
- syn case ignore
-
- " The keywords
-
- syn keyword aveStatement if then elseif else end break exit return
- syn keyword aveStatement for each in continue while
-
- " String
-
- syn region aveString start=+"+ end=+"+
-
- " Integer number
- syn match aveNumber "[+-]\=\<[0-9]\+\>"
-
- " Operator
-
- syn keyword aveOperator or and max min xor mod by
- " 'not' is a kind of a problem: Its an Operator as well as a method
- " 'not' is only marked as an Operator if not applied as method
- syn match aveOperator "[^\.]not[^a-zA-Z]"
-
- " Variables
-
- syn keyword aveFixVariables av nil self false true nl tab cr tab
- syn match globalVariables "_[a-zA-Z][a-zA-Z0-9]*"
- syn match aveVariables "[a-zA-Z][a-zA-Z0-9_]*"
- syn match aveConst "#[A-Z][A-Z_]+"
-
- " Comments
-
- syn match aveComment "'.*"
-
- " Typical Typos
-
- " for C programmers:
- syn match aveTypos "=="
- syn match aveTypos "!="
-
- " Define the default highlighting.
- " For version 5.7 and earlier: only when not done already
- " For version 5.8 and later: only when an item doesn't have highlighting+yet
- if version >= 508 || !exists("did_ave_syn_inits")
- if version < 508
- let did_ave_syn_inits = 1
- command -nargs=+ HiLink hi link <args>
- else
- command -nargs=+ HiLink hi def link <args>
- endif
-
- HiLink aveStatement Statement
-
- HiLink aveString String
- HiLink aveNumber Number
-
- HiLink aveFixVariables Special
- HiLink aveVariables Identifier
- HiLink globalVariables Special
- HiLink aveConst Special
-
- HiLink aveClassMethods Function
-
- HiLink aveOperator Operator
- HiLink aveComment Comment
-
- HiLink aveTypos Error
-
- delcommand HiLink
- endif
-
- let b:current_syntax = "ave"
-